const app = getApp()
import BaseModel from '../../utils/common.js'
Page({

  /**
   * 页面的初始数据
   */
  data: {
    page:1,
    size:100, //每页条数
    pendingOrdersData:[], //全部数据
    footer_more:"",
    empty_title:"",
    empty_img:"",
    empty_again:"",//重试
    is_clickTab:0, //重试或下拉是0，上啦是1
    role:2,//1是分总，2是员工 3财务
    nav_id:0,//点击导航id
    is_show1:false,//点击导航显示隐藏切换
    is_show2:false,//点击导航显示隐藏切换
    is_show3:false,//点击导航显示隐藏切换
    is_show4:false,//点击导航显示隐藏切换

    navType_id:0,//点击二级导航id
    activityType_id:0,//活动列表id
    navCompany_id:0,//财务获取公司id
    personType_id:1,//负责人id
    statusType_id:0,//点击状态id
    history_id:0,//搜索值

    navTypeData:"",//二级导航数据
    activityTypeData:"",//活动列表数据
    financeCompanyData:"",//财务获取公司数据
    personTypeData:"",//负责人数据
    statusTypeData:"",//状态数据
    historyData:[],//历史搜索记录
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    this.setData({
      historyData:wx.getStorageSync('searchHistory') || [],
    })
  },
  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
    this.setData({
      role:wx.getStorageSync('roleCode'),
    })
    this.getPendingOrdersData();
  },
  /*禁止页面滚动*/
  preventTouchMove() {

  },
  /*点击导航切换弹窗*/
  clickSearchNav:function(e) {
    this.setData({
      nav_id:e.currentTarget.dataset.id,
    })
    if(e.currentTarget.dataset.id==1){
      this.setData({
        is_show1:!this.data.is_show1,
        is_show2:false,
        is_show3:false,
        is_show4:false,
      })
    }else if(e.currentTarget.dataset.id==2){
      this.setData({
        is_show2:!this.data.is_show2,
        is_show1:false,
        is_show3:false,
        is_show4:false,
      })
    }else if(e.currentTarget.dataset.id==3){
      this.setData({
        is_show3:!this.data.is_show3,
        is_show1:false,
        is_show2:false,
        is_show4:false,
      })
    }else if(e.currentTarget.dataset.id==4){
      this.setData({
        is_show4:!this.data.is_show4,
        is_show1:false,
        is_show2:false,
        is_show3:false,
      })
    }
    this.getNavTypeData(); //获取导航
    this.getActivityTypeData(); //获取活动
    this.getNavCompanyData();//财务获取所有公司名单
    this.getPersonTypeData(); //获取负责人
    this.getStatusTypeData();//获取状态
  },
  /*点击二级导航*/
  clickNavType:function(e){
    this.setData({
      navType_id:e.currentTarget.dataset.id,
      history_id:0, //搜索
    })
    if(e.currentTarget.dataset.id==0){ //点击全部的时候，活动列表清空
      this.setData({
        activityType_id:0,
      })
    }
    this.getActivityTypeData(); //获取活动分类
    /*this.getPendingOrdersData();//获取查询数据*/
  },
  /*点击活动列表*/
  clickActivityType:function(e){
    this.setData({
      activityType_id:e.currentTarget.dataset.id,
      nav_id:0,
      page:1,
      is_clickTab:0,
      history_id:0, //搜索
    })
    this.getPendingOrdersData();//获取查询数据
  },
  /*财务点击公司*/
  clickNavCompany:function(e){
    this.setData({
      navCompany_id:e.currentTarget.dataset.id,
      history_id:0, //搜索
    })
    if(e.currentTarget.dataset.id==0){ //点击全部的时候，负责人列表清空
      this.setData({
        personType_id:1,
      })
    }
    this.getPersonTypeData(); //获取负责人
  },
  /*点击负责人*/
  clickPersonType:function(e){
    this.setData({
      personType_id:e.currentTarget.dataset.id,
      nav_id:0,
      page:1,
      is_clickTab:0,
      history_id:0, //搜索
    })
    this.getPendingOrdersData();//获取查询数据
  },
  /*点击状态*/
  clickStatusType:function(e){
    this.setData({
      statusType_id:e.currentTarget.dataset.id,
      nav_id:0,
      page:1,
      is_clickTab:0,
      history_id:0, //搜索
    })
    this.getPendingOrdersData();//获取查询数据
  },
  /*历史搜索记录*/
  /*清空垃圾桶*/
  deleteHistory:function(){
    wx.removeStorageSync('searchHistory')
    this.setData({
      historyData: []
    })
  },
  /*记录历史记录*/
  blurInput:function(e){
    let inputValue = e.detail.value;
    let historyData = this.data.historyData;
    if(inputValue==""){

    }else{
      if(historyData.length<10){
        historyData.unshift({
          value:inputValue
        })
      }else{
        historyData.pop();
        historyData.unshift({
          value:inputValue
        })
      }
      this.setData({
        historyData:historyData,
        history_id:inputValue,
        nav_id:0,
        page:1,
        is_clickTab:0,
        navType_id:0, //导航
        activityType_id:0, //活动
        navCompany_id:0,//公司
        personType_id:1, //负责人
        statusType_id:0, //状态
      })

      this.getPendingOrdersData();//获取查询数据
      wx.setStorageSync('searchHistory', historyData) //存到缓存
    }
  },
  /*历史纪录点击搜索*/
  clickHistory:function(e){
    this.setData({
      history_id:e.currentTarget.dataset.id,
      nav_id:0,
      page:1,
      is_clickTab:0,
      is_show : !this.data.is_show,
      navType_id:0, //导航
      activityType_id:0, //活动
      navCompany_id:0,//公司
      personType_id:1, //负责人
      statusType_id:0, //状态
    })
    this.getPendingOrdersData();//获取查询数据
  },
  /*获取二级导航数据*/
  getNavTypeDataModel: new BaseModel({
    url: 'employees/getBusiness',
    method: "get",
    needAjaxLoading:true,
    loadingText:"玩命加载中"
  }),
  getNavTypeData() {
    this.getNavTypeDataModel
        .fetch({})
        .then(res => {
          //成功
          this.setData({
            navTypeData:res.data
          })
        })
        .catch(res => {
          //失败
        })
  },
  /*获取活动数据*/
  getActivityTypeDataModel: new BaseModel({
    url: 'employees/getActivity',
    method: "get",
    needAjaxLoading:true,
    loadingText:"玩命加载中"
  }),
  getActivityTypeData() {
    this.getActivityTypeDataModel
        .fetch({
          id:this.data.navType_id
        })
        .then(res => {
          //成功
          this.setData({
            activityTypeData:res.data
          })
        })
        .catch(res => {
          //失败
        })
  },
  /*财务获取所有公司名单*/
  getNavCompanyModel: new BaseModel({
    url: 'employees/getOrganizer',
    method: "get",
    needAjaxLoading:true,
    loadingText:"玩命加载中"
  }),
  getNavCompanyData() {
    this.getNavCompanyModel
        .fetch({})
        .then(res => {
          //成功
          this.setData({
            financeCompanyData:res.data
          })
        })
        .catch(res => {
          //失败
        })
  },

  /*获取负责人数据*/
  getPersonTypeDataModel: new BaseModel({
    url: 'employees/getStaff',
    method: "get",
    needAjaxLoading:true,
    loadingText:"玩命加载中"
  }),
  getPersonTypeData() {
    this.getPersonTypeDataModel
        .fetch({
          id:this.data.navCompany_id
        })
        .then(res => {
          //成功
          this.setData({
            personTypeData:res.data
          })
        })
        .catch(res => {
          //失败
        })
  },
  /*获取状态数据*/
  getStatusTypeDataModel: new BaseModel({
    url: 'employees/getStatus',
    method: "get",
    needAjaxLoading:true,
    loadingText:"玩命加载中"
  }),
  getStatusTypeData() {
    this.getStatusTypeDataModel
        .fetch({})
        .then(res => {
          //成功
          this.setData({
            statusTypeData:res.data
          })
        })
        .catch(res => {
          //失败
        })
  },
  /*点击隐藏弹窗*/
  closeMask:function(){
    this.setData({
      nav_id:0,
      is_show1:false,//点击导航显示隐藏切换
      is_show2:false,//点击导航显示隐藏切换
      is_show3:false,//点击导航显示隐藏切换
      is_show4:false,//点击导航显示隐藏切换
    })
  },
  /*获取数据*/
  getPendingOrdersDataModel: new BaseModel({
    url: 'employees/allOrder',
    method: "get",
    needAjaxLoading:true,
    loadingText:"玩命加载中"
  }),
  getPendingOrdersData() {
    this.getPendingOrdersDataModel
        .fetch({
          page:this.data.page,
          size:this.data.size, //每页条数
          businesstype:this.data.navType_id, //导航
          activity_id:this.data.activityType_id, //活动
          organizer_id:this.data.navCompany_id,//财务选择的公司
          from_uid:this.data.personType_id, //负责人
          status:this.data.statusType_id, //状态
          keyword:this.data.history_id,
        })
        .then(res => {
          this.setData({ //获取到数据后，头部导航状态清空
            is_show1:false,
            is_show2:false,
            is_show3:false,
            is_show4:false,
          })
          //成功
          if(this.data.is_clickTab==0){
            this.setData({
              pendingOrdersData:res.data,
              empty_title:"暂无数据",
              empty_img:"http://hwj2018.oss-cn-beijing.aliyuncs.com/hwj2019/icon_new3.0/empty_mes.png",
              empty_again:"",//重试
            })

          }else{
            if(res.data==""||res.data==null){
              this.setData({
                footer_more:"没有更多数据了"
              })
            }else {
              //成功
              var pendingOrdersData_list = this.data.pendingOrdersData;
              for(var i=0;i<res.data.length;i++){
                pendingOrdersData_list.push(res.data[i])
              }
              this.setData({
                pendingOrdersData:pendingOrdersData_list
              })
            }
          }
        })
        .catch(res => {
          //失败
          this.setData({
            empty_title:"请求失败",
            empty_img:"http://hwj2018.oss-cn-beijing.aliyuncs.com/hwj2019/icon/empty_data.png",
            empty_again:"重试",//重试
          })
        })
  },
  //重试
  again_request:function(){
    this.setData({
      is_clickTab:0,
      page:1
    })
    this.getPendingOrdersData();
  },
  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {
    this.setData({
      is_clickTab:0,
      page:1
    })
    this.getPendingOrdersData();
    wx.stopPullDownRefresh(); //停止下拉
  },
  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {
    var that = this;
    that.data.page+=1;
    this.setData({
      is_clickTab:1
    })
    this.getPendingOrdersData();
  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

})